Definition (mapping of strings to Boolean functions)

Consider a special case of functions mapping strings to strings, Boolean functions which output a single bit.

Identify such a function ff with subset Lf={x:f(x)=1}L_f = \{x : f(x) = 1\} of {0,1}\{0,1\}^*, and call such sets languages or decision problems.

Note ^* is used for the Kleene star operator identifying all possible strings that may be formed by elements of the set.

Identify the computational problem of computing ff (i.e. given xx compute f(x)f(x)) with problem of deciding LfL_f (i.e. if xLfx \in L_f).

Definition (set of words)

A language LΣL \subseteq \Sigma^* is a set of words (where Σ\Sigma^* is the set of all words over alphabet Σ\Sigma)

Notes


References

  1. S. Arora, B. Barak. Computational Complexity: A Modern Approach, Cambridge University Press, 2009, p. 3.
  2. M. Avanzini, Lecture Notes, Topic: “finite automata.” M1-AL, Centre Inria d’Université Côte d’Azur, 2021. https://www-sop.inria.fr/members/Martin.Avanzini/teaching/2021/AL/slides/w1.pdf